#include "ExampleApplication.h"
#include "SdkTrays.h"
#include "GameFrameListener.h"
#include "GameApplication.h"
#include "ModelViewerUI.h"
#include "ModelViewFrameListener.h"
#include "CameraManager.h"
class ModelViewer: public GameApplication
{
public:
	ModelViewer();
	~ModelViewer();
	// ------Override functions-------
	virtual void createScene();
	virtual void createFrameListener();
	// ------
	// @return, return the entity pointer
	Ogre::Entity* loadEntity(const Ogre::String& modelName);
	void playAnimation(const Ogre::String& aniName,
						bool isLoop = false);
protected:
	ModelViewerUI* m_pUI;
	ModelViewFrameListener* m_pFrameListener;
	Ogre::Entity* m_pEntity;
	Ogre::SceneNode* m_pEntityNode;	
};